home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Gigarom 1
/
Gigarom Macintosh Archives (Quantum Leap)(CDRM1080320)(1993).iso
/
FILES
/
HYP
/
J-M
/
MenuUtils.cpt
/
Command History
/
stack.txt
< prev
Wrap
Text File
|
1989-04-19
|
6KB
|
213 lines
-- stack: in
-- format: 8 (HyperCard 1)
-- flags: 0x1000 (none)
-- protect password hash: 0
-- maximum user level: 5 (scripting)
-- window: Rect(x1=0, y1=0, x2=0, y2=0)
-- screen: Rect(x1=0, y1=0, x2=0, y2=0)
-- card dimensions: w=0 h=0
-- scroll: x=0 y=0
-- background count: 1
-- first background id: 2592
-- card count: 1
-- first card id: 2852
-- list block id: 3265
-- print block id: 0
-- font table block id: 0
-- style table block id: 0
-- free block count: 0
-- free size: 0 bytes
-- total size: 17152 bytes
-- stack block size: 5120 bytes
-- created by hypercard version: 0x01208000
-- compacted by hypercard version: 0x01208000
-- modified by hypercard version: 0x01208000
-- opened by hypercard version: 0x01228000
-- patterns[0]: 0x0000000000000000
-- patterns[1]: 0x8000000008000000
-- patterns[2]: 0x8800220088002200
-- patterns[3]: 0x8888222288882222
-- patterns[4]: 0x88AA22AA88AA22AA
-- patterns[5]: 0xCCAA33AACCAA33AA
-- patterns[6]: 0xEEAABBAAEEAABBAA
-- patterns[7]: 0xEEBBBBEEEEBBBBEE
-- patterns[8]: 0xFFBBFFEEFFBBFFEE
-- patterns[9]: 0xFFBBFFFFFFBBFFFF
-- patterns[10]: 0x8010022001084004
-- patterns[11]: 0xFFFFFFFFFFFFFFFF
-- patterns[12]: 0x8822882288228822
-- patterns[13]: 0x1122448811224488
-- patterns[14]: 0xC4800C6843023026
-- patterns[15]: 0xB130031BD8C00C8D
-- patterns[16]: 0xAA00AA00AA00AA00
-- patterns[17]: 0x8822552288225522
-- patterns[18]: 0x8855225588552255
-- patterns[19]: 0x77DD77DD77DD77DD
-- patterns[20]: 0x8000000000000000
-- patterns[21]: 0xAA55AA55AA55AA55
-- patterns[22]: 0x038448300C020101
-- patterns[23]: 0x8244394482010101
-- patterns[24]: 0x8814224188412214
-- patterns[25]: 0x8080413E080814E3
-- patterns[26]: 0x22048C7422179810
-- patterns[27]: 0xBE808808EB088880
-- patterns[28]: 0x25C8328964244C92
-- patterns[29]: 0xA29C41BE2AC914EB
-- patterns[30]: 0x40A00000040A0000
-- patterns[31]: 0x8040200002040800
-- patterns[32]: 0xAA00800088008000
-- patterns[33]: 0xFF80808080808080
-- patterns[34]: 0x081C22C180010204
-- patterns[35]: 0xFF808080FF080808
-- patterns[36]: 0xF87422478F172271
-- patterns[37]: 0xBF00BFBFB0B0B0B0
-- patterns[38]: 0xFF7FBE5DA2418000
-- patterns[39]: 0xFAF5FAF5A050A050
-- checksum: 0x0
----- HyperTalk script -----
-- The scripts in this stack are ©1989 by Steve Martin
on openstack
global historymenu,temphistory
if historymenu is empty then
setuphistory
put true into temphistory
else put false into temphistory
if the version < 1.2 then
answer "Hypercard version 1.2 or greater required!"
go home
exit openstack
end if
get the topleft of card window
show msg at 17,304
end openstack
on closestack
global historymenu,temphistory,historyindex,msghistory,history
if temphistory then
get deletemenu(historymenu)
put empty into historymenu
put empty into historyindex
put empty into msghistory
put empty into history
put false into temphistory
end if
end closestack
on arrowkey arrow
global msghistory, historyindex
if the optionkey is down then
if arrow is up then
add 1 to historyindex
put unquotify(line historyindex of msghistory) into com
if (the visible of msg) and (com is msg) then add 1 to historyindex
get the number of lines of msghistory
if historyindex > it then put 1 into historyindex
put unquotify(line historyindex of msghistory)
end if
if arrow is down then
subtract 1 from historyindex
get the number of lines of msghistory
if historyindex < 1 then put it into historyindex
put unquotify(line historyindex of msghistory)
end if
else pass arrowkey
end arrowkey
on domenu which
global msghistory,history
if history is not empty then
repeat with x = 1 to history
if line x of msghistory is which then
put unquotify(which)
select empty
type return
exit domenu
end if
end repeat
end if
pass domenu
end domenu
on idle
global msghistory, historyindex,historymenu,lasttick
if historyindex is not empty and historymenu is not empty then
if (the ticks-lasttick) > 120 then
put the ticks into lasttick
showmenu historymenu
if historyindex > 0 and line historyindex of msghistory <> quotify(msg) then
put 0 into historyindex
end if
end if
end if
pass idle
end idle
on returnkey
global msghistory, historyindex, history,historymenu
if historymenu is not empty then
put quotify(the msg) into qmsg
if line 1 of msghistory <> qmsg then
put qmsg & return before msghistory
if history > 1 then
repeat with x = 2 to history
get line x of msghistory
if it is "none" then exit repeat
if it is qmsg then
delete line x of msghistory
exit repeat
end if
end repeat
end if
repeat with x = 1 to history
if line x of msghistory <> empty then
changemenu historymenu,x,line x of msghistory
enablemenu historymenu,x,true
else exit repeat
end repeat
end if
if the number of lines of msghistory > history then
delete last line of msghistory
end if
put 0 into historyindex
end if
pass returnkey
end returnkey
on setuphistory
global historyindex,history,historymenu
put 0 into historyindex
put 15 into history
repeat with x = 1 to history
put "none" into line x of temp
end repeat
if historymenu is empty then
put newmenu("History",temp) into historymenu
repeat with x = 1 to history
enablemenu historymenu,x,false
end repeat
end if
end setuphistory
function quotify string
put quote into q
get offset(q,string)
repeat while it > 0
put "''" into char it of string
get offset(q,string)
end repeat
return string
end quotify
function unquotify string
put "''" into q
get offset(q,string)
repeat while it > 0
put quote into char it to it+1 of string
get offset(q,string)
end repeat
return string
end unquotify
--End of Command History Scripts